@import '../style/variable';
@import '../style/mixin';

#network {
  .network {
    @include absolute();
    padding-top: 39px;
  }
  .control {
    @include control();
    padding: 10px;
    border-bottom: none;
    .title {
      font-size: $font-size;
    }
    .icon-clear {
      left: 23px;
    }
    .icon-eye {
      right: 0;
    }
    .icon-copy {
      right: 23px;
    }
    .icon-filter {
      right: 46px;
    }
    .filter-text {
      white-space: nowrap;
      position: absolute;
      line-height: 20px;
      max-width: 80px;
      overflow: hidden;
      right: 88px;
      font-size: $font-size;
      text-overflow: ellipsis;
    }
    .icon-record {
      left: 0;
      &.recording {
        color: var(--console-error-foreground);
        text-shadow: 0 0 4px var(--console-error-foreground);
      }
    }
  }
  .request-error {
    color: var(--console-error-foreground);
  }
  .luna-data-grid:focus {
    .luna-data-grid-data-container {
      .request-error.luna-data-grid-selected {
        background: var(--console-error-background);
      }
    }
  }
  .luna-data-grid {
    border-left: none;
    border-right: none;
  }
  .detail {
    @include absolute();
    z-index: 10;
    display: none;
    padding-top: 40px;
    background: var(--background);
    .control {
      padding: 10px 35px;
      border-bottom: 1px solid var(--border);
      .url {
        font-size: $font-size-s;
        overflow: hidden;
        white-space: nowrap;
        text-overflow: ellipsis;
        width: 100%;
        display: inline-block;
      }
      .icon-arrow-left {
        left: 0;
      }
      .icon-delete {
        left: 0;
        display: none;
      }
      .icon-copy {
        right: 0;
      }
    }
    .http {
      @include overflow-auto(y);
      height: 100%;
      .section {
        border-top: 1px solid var(--border);
        border-bottom: 1px solid var(--border);
        h2 {
          background: var(--darker-background);
          color: var(--primary);
          padding: $padding;
          line-height: 18px;
          font-size: $font-size;
        }
        margin-top: 10px;
        margin-bottom: 10px;
        table {
          color: var(--foreground);
          * {
            user-select: text;
          }
          td {
            font-size: $font-size-s;
            padding: 5px 10px;
            word-break: break-all;
          }
          .key {
            white-space: nowrap;
            font-weight: bold;
            color: var(--accent);
          }
        }
      }
      .response,
      .data {
        user-select: text;
        @include overflow-auto(x);
        padding: $padding;
        font-size: $font-size-s;
        margin: 10px 0;
        white-space: pre-wrap;
        border-top: 1px solid var(--border);
        color: var(--foreground);
        border-bottom: 1px solid var(--border);
      }
    }
  }
}

.safe-area #network {
  .http {
    @include safe-area(padding-bottom, 0px);
  }
}

@media screen and (min-width: 680px) {
  #network {
    .network {
      .control {
        .icon-eye {
          display: none;
        }
        .icon-copy {
          right: 0;
        }
        .icon-filter {
          right: 23px;
        }
        .filter-text {
          right: 55px;
        }
      }
    }
    .detail {
      width: 50%;
      left: initial;
      right: 0;
      border-left: 1px solid var(--border);
      .control {
        .icon-arrow-left {
          display: none;
        }
        .icon-delete {
          display: block;
        }
      }
    }
  }
}
